/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package domain.model.file;

import domain.model.*;
import java.util.Stack;
import util.Utils;

/**
 *
 * @author Novo usuário
 */
public class Categoria implements ICategoria {

    private int id;
    private String nome;
    private String descricao;
    private Stack registrosIds = new Stack();
    private Stack categoriasFilhasIds = new Stack();
    private int categoriaPaiId = -1;

    public Categoria(String stream) {

        String[] strs = Utils.split(stream, "|");

        id = Integer.parseInt(strs[0]);
        nome = strs[1];
        descricao = strs[2];
        if (!"".equals(strs[3])) {
            categoriaPaiId = Integer.parseInt(strs[3]);
        }
        int numReg = Integer.parseInt(strs[4]);

        for (int i = 5; i < (numReg + 5); i++) {
            registrosIds.addElement(strs[i]);
        }

        int numCat = Integer.parseInt(strs[numReg + 5]);
        for (int i = (numReg + 6); i < (numCat + numReg + 6); i++) {
            categoriasFilhasIds.addElement(strs[i]);
        }
    }

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getNome() {
        return nome;
    }

    public void setNome(String nome) {
        this.nome = nome;
    }

    public String getDescricao() {
        return descricao;
    }

    public void setDescricao(String descricao) {
        this.descricao = descricao;
    }

    public Stack getRegistrosIds() {
        return registrosIds;
    }

    public void setRegistrosIds(Stack registrosIds) {
        this.registrosIds = registrosIds;
    }

    public Stack getCategoriasFilhasIds() {
        return categoriasFilhasIds;
    }

    public void setCategoriasFilhasIds(Stack categoriasFilhasIds) {
        this.categoriasFilhasIds = categoriasFilhasIds;
    }

    public int getCategoriaPaiId() {
        return categoriaPaiId;
    }

    public void setCategoriaPaiId(int categoriaPaiId) {
        this.categoriaPaiId = categoriaPaiId;
    }
}
